环境说明:Centos7、K8S 1.23版本

所有命令均在 root 模式下执行

kubernetes-dashboard GitHub地址:https://github.com/kubernetes/dashboard/releases

查看版本对应

dashboard v2.5.1dashboard v2.5.1
这里我用的是最新版dashboard,如图他目前只支持到1.23版本(这里版本要对应上)

修改recommended.yaml

在github上也可以看到他的安装命令,因为我们还要修改一些配置 所以先把配置文件下载下来

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yaml
vim recommended.yaml
kind: Service
apiVersion: v1
metadata:
labels:
k8s-app: kubernetes-dashboard
name: kubernetes-dashboard
namespace: kubernetes-dashboard
spec:
type: NodePort #添加这行
ports:
- port: 443
targetPort: 8443
nodePort: 30000 #添加这行
selector:
k8s-app: kubernetes-dashboard

kubectl创建应用

kubectl create -f recommended.yaml

web页面登录

https://K8S地址:30000/#/login
kubernetes-dashboardkubernetes-dashboard
因为一开始没有https证书 所以会爆不安全正常,直接访问就完了

获取登录token

创建账户
kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard
账户授权
kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
获取对应的账户列表
[root@localhost xiwi]# kubectl get secrets -n kubernetes-dashboard | grep dashboard-admin
dashboard-admin-token-dp8mr kubernetes.io/service-account-token 3 29d

“dashboard-admin-token-dp8mr” 就是你的账户名了

获取账户信息
kubectl describe secrets 写你的账户名 -n kubernetes-dashboard
[root@localhost xiwi]# kubectl describe secrets dashboard-admin-token-dp8mr -n kubernetes-dashboard
Name: dashboard-admin-token-dp8mr
Namespace: kubernetes-dashboard
Labels: <none>
Annotations: kubernetes.io/service-account.name: dashboard-admin
kubernetes.io/service-account.uid: 914d6c90-7ff0-47c5-bb4e-aacaabba8237

Type: kubernetes.io/service-account-token

Data
====
ca.crt: 1099 bytes
namespace: 20 bytes
token: eyJhbGciOiJSUzI1NiIsImtpZCI6InVGMTNlWk4yWnI4MUlmTk5YaHBGQzlFbUhNWDZwaXJqSERjRFpqVUNOTUkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlcm5ldGVzLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4tZHA4bXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiOTE0ZDZjOTAtN2ZmMC00N2M1LWJiNGUtYWFjYWFiYmE4MjM3Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmVybmV0ZXMtZGFzaGJvYXJkOmRhc2hib2FyZC1hZG1pbiJ9.mArR57jB_LHhuG43wPvKX-fdWYe7Ji1nYCXzobNUAknwxQkDQ0_rlD1-caEO-Yl-v8SNMaJnDKRgGxdKJ5Oz8ZwaqszT2qrcPHTgFBV7px3Co8uVipBE8jUCFIZ1bGUZ_8npTeYN00ffxs_u0Ko0kfHVW9-pZElva8BAgvaxSZx-5iN7S5SYh88OOajDrB5vJzRtTzYl6WM8pDaoWLbeHgB-Pe60wEGMBkDxfJZtaIlbwGq3YVW8us7KAfOqWfZS1hiDclF0fSbPHqXUPRauwoZgNtxh-db37w-M7EaeeGVA5kb7suhJpDm5As0Sx9jVijXoDi9bWiz2KPwnYC2RCA

token就是了,copy到网页就可以登录了